package site.fantasycube.blog.util.result;

/**
 * @author 幻&乐
 * @Date 2021/12/26
 * 描述 操作成功信息实体类
 */
public class Success extends BaseResult{

    /**
     *描述：默认操作成功
     */
    public static Success me(){
        return new Success().setSuccess();
    }

    /**
     *描述：操作成功数据包
     * @param message 成功信息
     */
    public static Success me(String message){
        return me().setSuccess(message);
    }

    /**
     *描述：操作成功数据包
     * @param obj 数据包
     */
    public static Success me(Object obj){
        return me().setSuccess(obj);
    }

    /**
     *描述：需要输入操作成功信息
     * @param message 操作成功信息
     * @param obj 数据包
     */
    public static Success me(String message , Object obj){
        return me().setSuccess(message).setSuccess(obj);
    }

    /**
     *描述：默认操作成功
     */
    private Success setSuccess(){
        super.setSuccess(true);
        super.setCode(200);
        super.setMessage("操作成功");
        return this;
    }

    /**
     *描述：需要输入操作成功信息
     * @param message 操作成功信息
     */
    private Success setSuccess(String message){
        super.setMessage(message);
        return this;
    }

    /**
     *描述：操作成功数据包
     * @param obj 数据包
     */
    private Success setSuccess(Object obj){
        super.setData(obj);
        return this;
    }
}
